//
//  ViewController.m
//  KVCDemo
//
//  Created by UniHan_iMac on 17/3/28.
//  Copyright © 2017年 UniHan_iMac. All rights reserved.
//

#import "ViewController.h"
#import "People.h"
#import "Car.h"

@interface ViewController ()

@end

@implementation ViewController

// KVC 不通过对象打点调用属性的方式，访问属性。
// KVC 能访问到对象打点调用不到的属性（非@property创建的属性）。

// KVC 通过 setValue forKey 的方法给属性赋值。
// KVC 通过 valueForKey 的方法获取属性值。

// KVC 通过 setValue forKeyPath 的方法进行属性值的传递（初始化用于值传递的属性）。
// KVC 通过 valueForKeyPath 的方法获取传递的属性值。

// KVC 通过 setValuesForKeysWithDictionary 的方法解析JSON数据。

- (void)viewDidLoad {
    [super viewDidLoad];
    People *peolpe = [[People alloc] init];
    [peolpe setValue:@"赵丽颖" forKey:@"name"];
    [peolpe setValue:@"女生" forKey:@"sex"];
    NSLog(@"%@是%@",[peolpe valueForKey:@"name"],[peolpe valueForKey:@"sex"]);
    
    [peolpe setValue:@"宝马" forKeyPath:@"car.carName"];
    NSLog(@"%@",[peolpe valueForKeyPath:@"car.carName"]);
}
@end
